package store.lunangangster.engine.impl;

import store.lunangangster.engine.ProcessEngine;
import store.lunangangster.engine.ProcessEngineConfiguration;
import store.lunangangster.engine.service.HistoryService;
import store.lunangangster.engine.service.RepositoryService;
import store.lunangangster.engine.service.RuntimeService;
import store.lunangangster.engine.service.TaskService;

public class ProcessEngineImpl implements ProcessEngine {

  protected ProcessEngineConfiguration processEngineConfiguration;

  public ProcessEngineImpl(ProcessEngineConfiguration processEngineConfiguration) {
    this.processEngineConfiguration = processEngineConfiguration;
  }

  @Override
  public ProcessEngineConfiguration getProcessEngineConfiguration() {
    return processEngineConfiguration;
  }

  @Override
  public RepositoryService getRepositoryService() {
    return processEngineConfiguration.getRepositoryService();
  }

  @Override
  public RuntimeService getRuntimeService() {
    return processEngineConfiguration.getRuntimeService();
  }

  @Override
  public TaskService getTaskService() {
    return processEngineConfiguration.getTaskService();
  }

  @Override
  public HistoryService getHistoryService() {
    return processEngineConfiguration.getHistoryService();
  }

}
